FTPでアップロードした画像ファイルをWordPressに認識させるプラグイン、WordPress Flash Uploader。
ブログ引越し時の話ですが、Movable Typeからの引越だったため、画像ファイルはFTPでサーバにアップロードしました。しかし、これだとWordPressがメディアとして認識してくれず、ただ、画像ファイルを各記事から参照しているだけのような状態になります。そうすると、概ね問題ないのですが、ちょっとだけ困ったことが起きます。
画像ファイルをWordPressに登録する意義
各記事にて画像を表示させるには、画像ファイルをIMGタグを使って指定すれば大丈夫です。そのため、FTP等で画像ファイルをアップロードしたところで、メディアの選択画面から指定できないだけであり、直接、IMGタグをテキストモードで書いてやれば問題ありません。
しかし、アイキャッチ画像の指定やWordPressの中から検索できるようにしたいと思うと、単にサーバ上にファイルが置いてあるだけではだめです。また、サムネイル表示用のファイルを自動生成もされていないのも、管理上、ちょっとイマイチです。
そもそも画像ファイルはWordPressからアップロードすれば問題なし
こんな記事を書いておいてなんですが、WordPressの指定したフォルダに保存するだけならば、WordPressの管理画面からアップロードすればデータベースへの登録やサムネイル表示用ファイルの自動生成もされるので、問題ありません。
しかし、例えば、メディアファイルの保存先を「年月」に設定しておくと、今月のフォルダに過去のすべての画像ファイル保存されてしまうので、なんとなく気持ち悪いのです。趣味の問題かも…。
そこで、FTPでフォルダ分けした状態で画像ファイルをアップロードし、その後、一括で画像ファイルをWordPressに認識させる方法が無いか調べてみました。
WordPress Flash Uploader
ということで、メジャーそうなプラグインを見つけました。「WordPress Flash Uplader」というプラグインです。
WordPress › WordPress Flash Uploader « WordPress Plugins
このプラグインは、WordPressに設定されているメディアファイルフォルダ以下をザクザクっと検索し、見つかった画像ファイルのサムネイルファイルを生成しながらWordPressに登録してくれるようです。
インストールはいつものWordPressの「プラグイン」画面から行います。「WordPress Flash Uploader」で検索すれば、すぐに見つかりました。あとはインストールして有効化します。
設定はいろいろありますが、よくわからないのでデフォルトのままです。
続いてWordPress管理画面の「メディア」に追加された「Sync Media Library」をクリックします。そうすると、現在のファイルの保存状態やWordPressへの登録状態を表示してくれます。ファイル数によりますが、そこそこ時間がかかります。
後は「Synchronize Media Library」をクリックして、実ファイルとWordPressの認識状態を同期させます。1ファイルずつ実行状態が表示されて…しばらくすると完了します。
メディアの挿入画面(メディアライブラリよりも画面が楽しいので)で登録状況を確認してみました。バッチリ登録されています。これでアイキャッチ画像登録などもできるようになりました。
WordPressの画像ファイルが保存されているフォルダの内容を確認してみたら、サムネイル表示用の画像ファイルもちゃんと変換して登録されていました。
ちまちまやったらPHPタイムアウトで処理中断…一気に!
実際のブログ引越し時の話を以前の記事で書きましたが、すんなりとは行きませんでした。以下の文章は、その時の記事の切り抜きですが、情報としては集まっていた方がいいので、ちょっと要約してここでも書いておきます。
WP Flash Loaderで数千ファイル一気に登録するのは負荷が高い
登録処理を事前にローカル環境で確認したらこれが結構な負荷でして、対策として画像ファイルを数百ファイルずつアップロードし、都度、「WordPress Flash Uploader」で登録するという方法を取ったのですが、これで逆にはまってしまいました。
アップロードした画像ファイル数が1500ファイル程度(自動生成されたサムネイルファイルも合わせると4,000ファイル程度)になったら、登録処理ができなくなってしまいました。
どうやら、サーバ側でタイムアウトを起こしていたようです。サーバ側にはPHPが一度に連続して処理できる時間を制限する機能があります。以前、ローカル環境でもWordPressのアップデートをするときに引っかかりました。
実は数百ファイルずつ登録する方がもっと負荷が高かった
数百ファイルずつ段階的に登録した方が、負荷が少ないだろう、と考えて分割でアップロード、都度、登録という方法を取ったのですが、これが逆に失敗の原因になってしまいました。
アップロードするファイル数を変えたりして何度か試しているうちに、どうもファイル数が増えてくると、最初の登録候補ファイルや既に登録されているファイルリストを作るところで時間を食っているっぽく思えて来ました。
そんなわけで、一旦、画像ファイルを全部WordPressから削除し、全ての画像ファイルをFTPでアップロードしてから一気にWP Flash Uploaderで登録するようにしたら、いとも簡単に!?登録できてしまいました。
ちょっと策におぼれた感じです。
でも、このままだと次回、FTPでのアップロードで追加登録ができないことになります。うーん、それはそれでちょっと困るかな?
今日の一言二言三言
共通の 画像ファイルは 年月の
フォルダじゃなくて 共通っぽいとこ
(がいい…)
盛大に最後が字余りを起こしていますが、普通にアップロードしている記事に付属する画像ファイルは年月フォルダに、例えばプロフィールで使うような画像はもっと共通っぽい名前のフォルダに入れたいな、というが事の始まりです。完全に趣味の問題ですが、せっかく自由になるサーバ、見えないところにもこだわりを…というのが時間食い虫の始まりですけど。
なにかうまい方法はないかな?
オススメ記事
- ぷららブログ(Broach)引越し大作戦!Movable TypeからWordPressへ移行するですよ。のまとめ。
ぷららブログが2014/06末で終了するため、独自ドメイン取得、レンタルサーバーを借りて引っ越しします。WordPressとか、何もかも初めてで試行錯誤右往左往しています。
落描解説:WordPressプラグイン関係用の記事のために、新しくトップイラストを描いてみました。
[…] (引用:http://siso-lab.net/wordpress-flash-uploader-312/) […]